.box {
  background-color: #FFF;
  position: relative;
  margin-bottom: 40px;
  padding: 20px 20px;
  transition: padding 500ms;
  -moz-transition: padding 500ms;
  -webkit-transition: padding 500ms;

  &.flat {
    border-left: 1px solid #efefef;
    border-right: 1px solid #efefef;
    border-bottom: 1px solid #e2e2e2;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.04);
  }

  .header {
    overflow: hidden;
    padding: 3px 0;
    border-bottom: 1px solid rgba(218, 218, 218, .4);
    transition: border 500ms;
    -moz-transitiontransition: border 500ms;
    -webkit-transition: border 500ms;
    &:after {
      visibility: hidden;
      display: block;
      font-size: 0;
      content: " ";
      clear: both;
      height: 0;
    }
    h3 {
      margin: 3px 0 10px 0;
    }
  }

  .actions {
    float: right;
    a {
      margin-right: 6px;
      color: rgba(0, 0, 0, 0.3);
    }
  }

  .content {
    width: auto !important;
    float: none !important;
    padding: 15px 3px 0 3px;;
    line-height: 1.7em;
  }
}


.box.ch {
  padding: 0;
  .header {
    padding: 10px;
    h3 {
      margin: 3px 0;
    }
    .actions {
      padding-top: 5px;
      a {
        color: #fff;
      }
    }
  }
  .content {
    padding: 20px;
    background-color: #fff;
    color: #656162;
  }
}


.box {
  &.primary {
    background-color: #7761a7;
    color: #fff;
  }
  &.info {
    background-color: #4aa3df;
    color: #fff;
  }
  &.dark {
    background-color: #383A41;
    color: #e4e4e6;
    .header {
      .actions {
        a {
          color: #e4e4e6;
        }
      }
    }
  }
  &.success {
    background-color: #19b698;
    color: #fff;
  }
  &.danger {
    background-color: #ea6153;
    color: #fff;
  }
}


.box {
  .spinner {
    z-index: 10000;
    background-color: rgba(255, 255, 255, .65);
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    color: #898989;
    text-shadow: 0 0 1px rgba(0,0,0,.2);
    font-size: 2em;
    text-align: center;
    cursor: wait;
  }
}